<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1.* 可以出现0次或多次
        var rg1 = /^a*$/ //表示a可以出现0次到多次
        console.log(rg1.test('aaabb'));//false
        console.log(rg1.test('aaaa'));//true
        console.log(rg1.test(''));//true
        console.log(rg1.test(1));//false
        console.log('----------');

        // 2.+ 可以出现1次或多次
        var rg2 = /^a+$/ //表示a可以出现1次或多次
        console.log(rg2.test(''));//true
        console.log(rg2.test('aa'));//true
        console.log(rg2.test('aabb'));//false
        console.log('----------');

        // 3.? 可以出现1次或0次
        var rg3 = /^a?$/ //表示a出现0次或一次
        console.log(rg3.test(''));//true
        console.log(rg3.test('a'));//true
        console.log(rg3.test('aa'));//fasle
        console.log('----------');

        // 4.{} 重复n次
        var rg4 = /^a{3}$/ //要求a重复3次
        console.log(rg4.test(''));
        console.log(rg4.test('aa'));
        console.log(rg4.test('aaa'));
        console.log('----------');

        // 5.{n,} 出现大于等于n次
        var rg5 = /^a{3,}$/ //要求a出现大于等于3次
        console.log(rg5.test(''));//false
        console.log(rg5.test('aaa'));//true
        console.log(rg5.test('aaaa'));//true
        console.log('----------');

        // 6.{min,max} 出现次数大于等于min次，且小于等于max次
        var rg6 = /^a{3,5}$/ //要求a出现3次以上，5次以下 左闭右闭
        console.log(rg6.test(''));//false
        console.log(rg6.test('a'));//false
        console.log(rg6.test('aaaa'));//true
        console.log(rg6.test('aaaaaaaa'));//fasle
    </script>
</body>
</html>